package com.qst.system.service.impl;

import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.qst.system.mapper.ScoreLevelMapper;
import com.qst.system.domain.ScoreLevel;
import com.qst.system.domain.vo.ScoreLevelVo;
import com.qst.system.service.IScoreLevelService;

/**
 * 用户等级Service业务层处理
 * 
 * @author linzhe
 * @date 2025-08-25
 */
@Service
public class ScoreLevelServiceImpl implements IScoreLevelService 
{
    @Autowired
    private ScoreLevelMapper scoreLevelMapper;

    /**
     * 查询用户等级
     * 
     * @param scoreId 用户等级ID
     * @return 用户等级
     */
    @Override
    public ScoreLevel selectScoreLevelById(Long scoreId)
    {
        return scoreLevelMapper.selectScoreLevelById(scoreId);
    }

    /**
     * 查询用户等级列表
     * 
     * @param scoreLevel 用户等级
     * @return 用户等级
     */
    @Override
    public List<ScoreLevel> selectScoreLevelList(ScoreLevel scoreLevel)
    {
        return scoreLevelMapper.selectScoreLevelList(scoreLevel);
    }
    
    /**
     * 查询用户等级列表（联表查询）
     * 
     * @param scoreLevel 用户等级
     * @return 用户等级集合
     */
    @Override
    public List<ScoreLevelVo> selectScoreLevelVoList(ScoreLevel scoreLevel)
    {
        return scoreLevelMapper.selectScoreLevelVoList(scoreLevel);
    }

    /**
     * 新增用户等级
     * 
     * @param scoreLevel 用户等级
     * @return 结果
     */
    @Override
    public int insertScoreLevel(ScoreLevel scoreLevel)
    {
        return scoreLevelMapper.insertScoreLevel(scoreLevel);
    }

    /**
     * 修改用户等级
     * 
     * @param scoreLevel 用户等级
     * @return 结果
     */
    @Override
    public int updateScoreLevel(ScoreLevel scoreLevel)
    {
        return scoreLevelMapper.updateScoreLevel(scoreLevel);
    }

    /**
     * 删除用户等级对象
     * 
     * @param scoreIds 需要删除的用户等级ID
     * @return 结果
     */
    @Override
    public int deleteScoreLevelByIds(Long[] scoreIds)
    {
        return scoreLevelMapper.deleteScoreLevelByIds(scoreIds);
    }

    /**
     * 删除用户等级信息
     * 
     * @param scoreId 用户等级ID
     * @return 结果
     */
    @Override
    public int deleteScoreLevelById(Long scoreId)
    {
        return scoreLevelMapper.deleteScoreLevelById(scoreId);
    }
    
    /**
     * 查询所有公司名称
     * 
     * @return 公司名称列表
     */
    @Override
    public List<String> selectCompanyNameList()
    {
        return scoreLevelMapper.selectCompanyNameList();
    }
}